새 값은 배열 끝에 붙은 뒤 부모보다 작은 동안 한 레벨씩 올라간다
힙 [5, 9, 11, 14, 18, 19, 21, 33, 17, 27]에 값을 하나 넣는다. 넣을 값과 진행한 단계를 바꾸면 비교하는 두 칸, 교환 횟수, 배열이 바뀐다.
최솟값을 빼면 마지막 값이 루트로 올라와 더 작은 자식 노드와 바꾸며 내려간다
같은 힙에서 루트 5를 꺼낸다. 교환 대상을 고르는 규칙과 진행한 단계를 바꾸면 27이 내려가는 길과 끝난 뒤 힙 성질을 지키는지가 바뀐다.
heappush로 넣은 리스트는 정렬되어 있지 않아도 힙 성질은 지킨다
빈 리스트에 4, 9, 3, 7, 5, 1, 6, 8, 2를 차례로 heappush한다. 넣은 개수를 바꾸면 내부 list, 트리 모양, 이번 삽입의 sift up 교환 횟수가 바뀐다.